online compiler and debugger for c/c++

code. compile. run. debug. share.
Source Code    Language
/****************************************************************************** Online C Compiler. Code, Compile, Run and Debug C program online. Write your code in this editor and press "Run" button to compile and execute it. *******************************************************************************/ #include <stdio.h> #include <stdbool.h> /* Include standard boolean library */ #include <string.h> /* Include string library */ unsigned int Read_Data(char* _buffer) { unsigned int len = 0; unsigned char tmp[50] = {'+', 'I', 'P', 'D', ',', /*'0', ',',*/ '3', ':', 0x04, 0x01, 'f', '+', 'I', 'P', 'D', ',', /*'1', '9', ',',*/ '6', ':', 0x01, 0x04, 'f', 'i', 's', 'k' }; while (tmp[len] != '\0') { _buffer[len] = tmp[len]; len++; } return len; } /* Connection Mode */ #define SINGLE 0 #define MULTIPLE 1 int main() { printf("Hello World\n"); int connectionMode = SINGLE; char _buffer[150]; unsigned char payload[50]; unsigned char tmp[10]; unsigned int dKanal; unsigned int dKommando; unsigned int dLengde; int len = 0; memset(_buffer, 0, 150); len = Read_Data(_buffer); char * pbuffer_cmd = strstr(_buffer, "+IPD"); if (len > 0 && pbuffer_cmd != NULL) { while (pbuffer_cmd != NULL) { char *pbuffer_len = strstr(pbuffer_cmd, ":"); int startpos = (int)(pbuffer_cmd - _buffer); int endpos = (int)(pbuffer_len - _buffer); printf("startpos: %d, endpos: %d\n", startpos, endpos); strncpy(tmp, pbuffer_cmd, endpos); printf("test: %s\n", tmp); char * token = strtok(tmp, ","); printf( "head: %s\n", token ); // +IPD (ignore) if (connectionMode == MULTIPLE) { token = strtok(NULL, ","); sscanf(token, "%d", &dKanal); printf( "kanal ID: %d\n", dKanal ); // channel ID } token = strtok(NULL, ":"); sscanf(token, "%d", &dLengde); printf( "lengde: %d\n", dLengde ); // data length strncpy(payload, pbuffer_len+1, dLengde); dKommando = payload[0]; dLengde = payload[1]; // +1 for å klarere :, +2 for å gå forbi kommando- og lengde-bytes strncpy(payload, pbuffer_len+1 +2, dLengde); payload[dLengde] = 0; //handlePayload(dKommando, dLengde, payload); printf("kommando: %d, lengde: %d, payload: |%s|\n", dKommando, dLengde, payload); pbuffer_cmd = strstr(pbuffer_len, "+IPD"); } } printf("DONE\n"); return 0; }

Compiling Program...

Command line arguments:
Standard Input: Interactive Console Text
×

                

                

Program is not being debugged. Click "Debug" button to start program in debug mode.

#FunctionFile:Line
VariableValue
RegisterValue
ExpressionValue